package com.zuipin.service;

import java.util.List;

import com.zuipin.entity.BaseProductBrand;
import com.zuipin.framework.result.PageResult;
import com.zuipin.util.Pagination;
import com.zuipin.vo.ProductBrandVo;

/**
 * 商品品牌业务类
 *
 * @ClassName IBaseProductBrandService
 * @author wangcongyi
 * @date 2017年7月18日 上午11:47:18
 */
public interface IBaseProductBrandService {
	
	// 查询商品品牌信息列表
	public List<BaseProductBrand> selectProductBrand();
	
	public BaseProductBrand selectByPrimaryKey(Short id);
	
	public List<BaseProductBrand> selectProductBrandByName(String brandName, Pagination page);
	
	public int insertProductBrand(String brandName, String logoUrl, String remark);
	
	public int updateProductBrand(Long id, String brandName, String logoUrl, String remark);
	
	/** 
	 * 新增
	 * 
	 * @Title: insert 
	 * @author: wuyicheng
	 * @date: 2017年8月15日上午8:41:48 
	 * @param baseProductBrand
	 * @return
	 * @return: int
	 * @throws 
	 */
	int insert(BaseProductBrand baseProductBrand);
	
	/** 
	 * 修改
	 * 
	 * @Title: update 
	 * @author: wuyicheng
	 * @date: 2017年8月15日上午8:41:53 
	 * @param baseProductBrand
	 * @return
	 * @return: int
	 * @throws 
	 */
	int update(BaseProductBrand baseProductBrand);
	
	/** 
	 *
	 * @Title: findById 
	 * @author: wuyicheng
	 * @date: 2017年8月15日下午2:24:45 
	 * @param id
	 * @return
	 * @return: BaseProductBrand
	 * @throws 
	 */
	public BaseProductBrand findById(Long id);
	
	/**
	 * 
	 * @Title: selectProductBrand 
	 * @Description: TODO
	 * @author xjd
	 * @param @param baseProductBrand
	 * @param @param pageNumber
	 * @param @param pageSize
	 * @param @return
	 * @return PageResult<List<BaseProductBrand>>
	 * @throws
	 */
	public PageResult<List<BaseProductBrand>> selectProductBrand(BaseProductBrand baseProductBrand, Integer pageNumber, Integer pageSize);
	
	/** 
	 * 根据品牌ids查询品牌信息
	 * 
	 * @Title: findListByIds 
	 * @author: wuyicheng
	 * @date: 2017年8月18日下午9:00:20 
	 * @param sysId
	 * @param brandIds
	 * @return
	 * @return: List<BaseProductBrand>
	 * @throws 
	 */
	public List<ProductBrandVo> findListByIds(Long sysId, List<Long> brandIds);
}
